An enterprise IT system comprises a network of IT infrastructures such as desk top terminals, servers, routers and databases and a plurality of software applications executed by the components of the system to implement enterprise business processes. An enterprise IT system may comprise an interconnection of many remote components and/or systems belonging to a plurality of enterprises rather than wholly belonging to a single enterprise and may be connected through private networks and/or public networks such as the Internet. Whatever form an IT system takes, it requires the sharing of data between applications being implemented within the system.
At the heart of an enterprise IT system is a means enabling the systematic sharing of data between applications. International Business Machines (IBM) Corporation established the WebSphere MQ system (WebSphere is a trade mark of IBM), formerly known as the MQSeries system, as the basis for modern message based data exchange systems. The MQSeries system is a Message Oriented Middleware (MOM) system that comprises queuing software whereby messages are moved point to point between applications. A sending application dispatches a message to a queue manager which provides assured delivery to its final destination.
IBM now provides the WebSphere Business Integration (WBI) Server system as an enterprise application integration solution which ties together disparate applications through the use of a message management system (message broker) together with application adapters, routing, transformation and business workflow. The message broker is one example of a runtime environment which is responsible for executing message flows. The primary role of the message broker is to execute the business logic defined in such message flows. Applications send and receive messages to and from the broker. The broker routes the messages using rules defined in the message flows and transforms the data into the structure required by a receiving application.
In conventional IT systems, a monitor provided with the system monitors IT infrastructures such as application servers, web servers and adapters and runtime environments such as workflow engines and message brokers, for example, through event objects that may be produced by said IT infrastructures. An event object may comprise data representative of many different types of information indicative of such things as a time stamp relating to the processing of a message flow or activity, an identifier for the event object or IT information identifying the IT system or systems that are running, information concerning the nature or content of data 10 being processed, for example. An application creating the event, the event source, passes the event object to an event infrastructure including an event log and an optional catalogue. The event infrastructure passes the event object onto event consumers, i.e. applications that have expressed an interest in receiving the event object. The event infrastructure may also store the event object in the event log, where it can be later retrieved along with other potentially related events.
In conventional IT systems, the event log defines the structure of the event objects produced by applications and IT system components. This comprises a description of the format of the event data produced by the IT system implementation and is therefore tied to that implementation. The monitor monitors the implementation of business processes and provides measurements derived from the event objects. However, since the content of each event object is tied to the IT system implementation, the monitor must be modified each time the IT system implementation is changed. This results in brittle monitoring solutions making it impossible to provide generic monitors of a reasonable level of sophistication. As IT systems are being increasingly integrated, it is desirable to provide a means of obtaining a total process monitoring view which is decoupled from the specific IT system implementation.